1. Field of the Invention
The present invention is directed to a system for work progress tracking and management and, more particularly, to a system for assigning tasks to a workforce, optimizing the scheduling of the tasks, with automatic rescheduling of the tasks while insuring the completion of the tasks before the desired completion date and utilizing the workforce with minimal ideal periods on a geographic basis.
2. Description of the Related Art
In many firms, if not most, personal costs are by far one of the largest, if not the largest, cost a firm has to address. In large telecommunications (xe2x80x9ctelecomxe2x80x9d) companies staff costs are also a major cost item and can also have greatest impact on profitability for several reasons. First, schedule optimization of such resources can save significant costs. Second, effective scheduling with customer constraints in mind (access to premises when the customer is available, reliable end-date forecasting) is a major differentiating factor in today""s competitive telecom market. Finally, a swift reaction to changing circumstances (preferably transparent to the customer) can increase a firm""s competitive advantage in the market by filling orders when other firms cannot.
Telecom companies need to handle orders of customers having significant complexity from diverse domains. These domains include wireline, wireless, residential customers, and business customers. Further, business customer orders are often many times more complex than those found in the residential marketplace. To schedule staff for these customers, telecom companies need to reflect the customer""s value. Often a customer""s value may be assigned designations such as gold, silver, or bronze. The same order from these three different types of customers may result in three different solutions or methods of filling the order.
Further, these solutions need to reflect the hundreds or thousands of changes, which can happen during a day. Such changes include:
1. Tasks and orders being added, deleted, or modified;
2. The actual duration of tasks can vary from the anticipated duration;
3. The workforce situation also can change due to sickness, or addition of new workforce members; and
4. The ability to load balance between workforce units in different locations and to recognize dependencies between tasks, both at the workforce level and external system level also adds to the complexity.
The foregoing dependencies are complex, particularly when volume is high. All optimization changes that can occur in a high volume environment need to be effectively handled. Furthermore, the same workforce handles new orders (installations) and maintenance. Maintenance loads can change so significantly that the system must include a percentage of the workforce that are reserved just for maintenance tasks. This percentage of the workforce dedicated to maintenance must be xe2x80x9cinvisiblexe2x80x9d to the scheduling process and be able to fluctuate from one day to another.
Scheduling optimization also must be based on more than one parameter. One such parameter is order priority, which may reflect the value of the customer as discussed above. Another is flexibility, which is needed to reflect the desired workforce utilization. For example, one telecom company may desire to schedule their workforce to 75% of maximum capacity, while another prefers to operate at 90% utilization, leaving the remainder capacity for trouble tickets or handling emergency calls. A telecom company needs to be able to change this percentage quickly based on the rescheduling of orders already in the system. By doing so, it can smooth the xe2x80x9cpeaks and valleysxe2x80x9d in the load in both the new orders and maintenance areas.
Given the number of possible permutations based on daily changes, each with a potential impact to the schedule, solutions with manual intervention are sub-optimal and cannot meet the needs of large telecom companies. Furthermore, the system must both automatically integrate workflow with scheduling, then re-optimize the orders based on the latest situation during the day while taking into account work order priority, risk (how close are we to slipping the date committed to the customer) and keeping costs to a minimum.
No integrated solution for the above identified problems is known to exist which can manage workflow, scheduling, and optimization of workflow and the workforce based on multiple parameters.
There are workflow products on the market but most do not provide any planning interface. Those which do, do not provide an interface to workforce or an automatic method to regularly re-schedule based on the latest data.
Examples of workflow products include InConcert(trademark) and FileNet(trademark). InConcert(trademark) provides interface to MSProject(trademark), which is single-dimension planning. There is no rules engine within either of the two products.
There are workforce management systems on the market. Some do not understand the concept of an order (i.e. all activities in the work pool are considered to be one order). In this situation the system does not understand order priority (high, medium, low). Further, such systems do not distinguish between orders, which consist of tasks, and the tasks themselves. Furthermore, no system is known that provides for automatic rescheduling based on composite parameters.
What is needed is a work progress tracking system is needed that is sophisticated enough to handle the above described level of complexity, which also can include integration among workflow, scheduling, and workforce management, while also applying automatic re-optimization on a regular basis. This system should also operate without significant manual intervention and schedule tasks based on several constraints.
It is an object of the present invention to provide a method of integrating workflow, workforce management and scheduling functional paradigms.
It is a further object of the present invention to combine state of the art tools (an inference engine and a sophisticated scheduler) to provide online and offline optimization based on configurable criteria.
It is a further object of the present invention to automatically re-optimize all orders based on the data gathered during the day (deltas of actuals and planned, new orders, and canceled orders).
It is another object of the present invention to optimizes schedules based on multiple criteria including: minimization of costs; minimization of gaps in work pool assignments; order priority (high, medium, low); and jeopardy to the schedule.
It is still a further object of the present invention to combine the foregoing objectives with a sophisticated scheduler that considers the start and finish dates and considers the target percentage workforce utilization when scheduling.
It is a further object of the present invention to automatically reschedule all jobs offline when a change in utilization parameter occurs. Thus, when the utilization parameter drops from 80% to 70% the distributed offline system 102 reschedules all current jobs to reflect the change in the workforce.
It is an additional object of the present invention to be able to flexibly schedule taking into consideration the geographical area. With such a geographic capability it is possible to include members of a different work pool to help with activities outside their home base area when needed. Once such work pool members are designated as available outside the home base, the system automatically takes their availability into account during the offline scheduling run and reschedules all jobs accordingly.
It is also an object of the present invention to allow for flexibility of the system in the area of xe2x80x9cstability zonesxe2x80x9d representing time periods in which assigned tasks may not be rescheduled. These stability zones are based on parameters the user specifies and the length of time allotted to each zone.
It is another object of the present invention to provide for optional explicit xe2x80x9clockingxe2x80x9d of tasks during an offline run. When tasks are xe2x80x9clockedxe2x80x9d they will not be modified during the offline run. An Example of locking can be seen in fulfilling an order where there is a xe2x80x9cdependencyxe2x80x9d on customer, such as, a visit to customer premises. When rescheduled, it would be desirable to insulate the customer from changes, i.e. xe2x80x9clockxe2x80x9d the task where such dependency exists, and schedule around it. Another example of locking is scheduling against a given date, e.g. customer says he""ll place an order if it can be fulfilled by a particular date. It would be desirable to xe2x80x9clockxe2x80x9d the completion date and ensure rescheduling does not impact it.
It is still a further object of the present invention to provide for flexible workforce scheduling based on multiple parameters. These can reflect such items as xe2x80x9ccustomer valuexe2x80x9d, utilization percentage (the same workforce typically works on installation and trouble tickets, so if there is a high number of trouble tickets, it""s possible to decrease utilization on installation), xe2x80x9cfinish beforexe2x80x9d or xe2x80x9cfinish afterxe2x80x9d an event or date, duration of zones (frozen zone, stability zone, optimization zone), and duration of time slots.
It is a further object of the present invention to perform on-line scheduling of new and modified activities during the day as they occur.
It is also a further object of the present invention to maintain stability of the schedule with respect to re-scheduling. This stability of the schedule relates to the frozen zone, stability zone, optimization zone. The zones and their functions are described in detail later, together with pictorial representation. The other aspect of stability of the schedule is the flexibility to xe2x80x9clockxe2x80x9d tasks (either dependencies or delivery dates) so as to make internal schedule changes transparent to the customer.
It is still a further object of the present invention to produce highly optimized schedules. These schedules take into consideration order priority, make duration of composed activities small, and avoid gaps in work pool utilization. activities typically comprise several tasks. The system schedules as many of the tasks in parallel as possible, thus producing the shortest possible critical path for the overall composed activity. Further, these schedules plan for as many activities as possible.
It is also an object of the present invention to take into consideration that activities have to be assigned to individual work pool members.
It is still a further object of the present invention that the system not violate certain constraints and should not yield empty schedules, i.e. the user get back a valid schedule but certain constraints can be softened.
It is an object of the present invention to compute a target completion date for orders that do not have a target completion date specified to prevent the situation where the low priority orders are never fulfilled.
The above objects can be attained by a system that manages workflow, the workforce, scheduling, and optimization of workflow and the workforce based on multiple parameters. These parameters include such items as customer value, workforce utilization, and geographic regions. Whenever a change occurs, re-scheduling and optimization is done automatically.
These together with other objects and advantages which will be subsequently apparent, reside in the details of construction and operation as more fully hereinafter described and claimed, reference being had to the accompanying drawings forming a part hereof, wherein like numerals refer to like parts throughout.